package com.hoshiicloud.user.param.company;

import com.hoshiicloud.common.query.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @Author:campchen
 * @Date:Created in 下午 03:50 2019/9/11
 * @PACKAGENAME com.hoshiicloud.user.param.company
 * @Description
 */
@Data
public class ComDepartmentsQueryParam extends PageParam {
    private static final long serialVersionUID = 1L;

    @NotNull(message = "公司ID不能为空")
    @ApiModelProperty(name = "commpanyId", value = "公司ID", required = true, dataType = "java.lang.Long", example = "3171776001692663893")
    private Long commpanyId;


    @NotNull(message = "上级机构不能为空")
    @ApiModelProperty(name = "parentId", value = "上级机构", required = true, dataType = "java.lang.Long", example = "3171776001692663916")
    private Long parentId;


    @NotBlank(message = "部门或事业部名称不能为空")
    @ApiModelProperty(name = "name", value = "部门或事业部名称", required = true, dataType = "java.lang.String", example = "XX部门")
    private String name;


    @NotBlank(message = "开户许可证不能为空")
    @ApiModelProperty(name = "openPermit", value = "开户许可证", required = true, dataType = "java.lang.String", example = "开户许可证")
    private String openPermit;


    @NotBlank(message = "负责人不能为空")
    @ApiModelProperty(name = "charge", value = "负责人", required = true, dataType = "java.lang.String", example = "张三")
    private String charge;


    @NotBlank(message = "身份证号码不能为空")
    //@IdCard(message = "身份证号码为15位或18位，请输入正确的身份证号码")
    @ApiModelProperty(name = "idCard", value = "身份证号码", required = true, dataType = "java.lang.String", example = "420324198804090032")
    private String idCard;


    @NotBlank(message = "对公帐号不能为空")
    //@IsNumber(message = "对公帐号只能为数字，请输入正确的对公帐号")
    @ApiModelProperty(name = "bankNumber", value = "对公帐号", required = true, dataType = "java.lang.String", example = "6225882106335893")
    private String bankNumber;

    /**
     * 银行名称
     */
    @NotBlank(message = "银行名称不能为空")
    @ApiModelProperty(name = "bankName", value = "银行名称", required = true, dataType = "java.lang.String", example = "中国建设银行")
    private String bankName;


    @NotBlank(message = "所在支行不能为空")
    @ApiModelProperty(name = "bankAddress", value = "所在支行", required = true, dataType = "java.lang.String", example = "中国建设银行马尾支行")
    private String bankAddress;


    @NotBlank(message = "税务登记号不能为空")
    @ApiModelProperty(name = "taxation", value = "税务登记号", required = true, dataType = "java.lang.String", example = "440330584063792")
    private String taxation;



    @NotBlank(message = "开票号不能为空")
    @ApiModelProperty(name = "piaoHao", value = "开票号", required = true, dataType = "java.lang.String", example = "12312312321")
    private String piaoHao;


    @NotBlank(message = "电话号码不能为空")
    //@Telephone(message = "请输入正确的电话号码")
    @ApiModelProperty(name = "telphone", value = "电话号码", required = true, dataType = "java.lang.String", example = "0755-8805222")
    private String telphone;

    @NotBlank(message = "手机号码不能为空")
    //@Mobile(message = "请输入正确的手机号码")
    @ApiModelProperty(name = "mobile", value = "手机号码", required = true, dataType = "java.lang.String", example = "18620195708")
    private String mobile;


    @NotBlank(message = "传真不能为空")
    //@Fax(message = "请输入正确的传真号码")
    @ApiModelProperty(name = "fax", value = "传真", required = true, dataType = "java.lang.String", example = "0755-8805222")
    private String fax;


    @NotBlank(message = "主页不能为空")
    //@URL(message = "请输入正确的主页地址")
    @ApiModelProperty(name = "home", value = "主页", required = true, dataType = "java.lang.String", example = "http://www.github.com/maiboyc")
    private String home;


    @NotBlank(message = "邮件不能为空")
    @Email(message = "请输入正确的邮箱地址")
    @ApiModelProperty(name = "email", value = "邮件", required = true, dataType = "java.lang.String", example = "maiboyc@163.com")
    private String email;


    @NotBlank(message = "公司地址不能为空")
    @ApiModelProperty(name = "address", value = "公司地址", required = true, dataType = "java.lang.String", example = "福建省福州市马尾区世创大厦3楼")
    private String address;
}
